// 构造函数生成实例对象的过程:
// 1.当使用了构造函数，并且new 构造函数(),后台会隐式执行new Object()创建对象;
// 2.将构造函数的作用域赋给新对象（即new Object()创建出的对象），而函数体内
//   的this就代表new Object()出来的对象。
// 3.执行构造函数的代码。
// 4.返回新对象（后台直接返回）;

class Person{   //定义了一个名字为Person的类
    constructor(name, age){ //constructor是一个构造方法，用来接收参数
        this.name = name;   //this代表的是实例对象
        this.age=age;
    }
    say(){  //这是一个类的方法，注意千万不要加上function
        return "我的名字叫" + this.name+"今年"+this.age+"岁了";
    }
}
let obj=new Person("李大师", 30);
console.log(obj.say());//我的名字叫李大师今年30岁了

// 从这两段代码可以看书，其实Person类实质上就是一个函数。类自身指向的就是构造函数。
// 所以可以认为ES6中的类其实就是构造函数的另外一种写法.
// 类的所有方法都定义在类的prototype属性上面

